<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="js/vue.js"></script>
</head>
<body>
    <div id="app">
       <p>{{ msg }}</p>
       <hr>

       <nav-bar></nav-bar>
       <hr>


       <nav-bar></nav-bar>
       <hr>

    </div>

    <!-- 模板内容 -->
    <template id="hello">
        <div>
            <p>{{ name }}</p>
            <p>{{ age }}</p>
            <p>{{ sex }}</p>
            <button @click="modifyName">修改name</button>

            <!-- comp-a是nav-bar的子组件，所以只能在nav-bar内使用 -->
            <comp-a></comp-a>
        </div>
    </template>

    <template id="world">
        <p>我是word</p>
    </template>
</body>
</html>
<script>
    // 创建一个Vue实例，其本质就是一个组件，称为根组件
    var vm = new Vue({
        el: '#app',
        data: { 
           msg: 'welcome'
        },
        components: { // 自定义组件
            'nav-bar': {
                template: '#hello',
                data: function(){ // 组件的数据仓库，必须以函数返回值的形式定义
                    return {
                        name: 'tom',
                        age: 20,
                        sex:'male'
                    }
                },
                methods: {
                    modifyName(){
                        this.name = 'jerry'
                    }
                },
                components: {
                    'comp-a': {
                        template: '#world'
                    }
                }
            }
        }
    })
</script>